/**
 * This is a generated class and is not intended for modification.  To customize behavior
 * of this service wrapper you may modify the generated sub-class of this class - CurrencyMaster.as.
 */
package com.service
{
import com.adobe.fiber.core.model_internal;
import com.adobe.fiber.services.wrapper.RemoteObjectServiceWrapper;
import com.adobe.serializers.utility.TypeUtility;
import com.model.valueObjects.VOCountryMaster;
import com.model.valueObjects.VoCurrencyDetSerial;
import com.model.valueObjects.VoCurrencyDetail;
import com.model.valueObjects.VoCurrencyHeader;
import mx.rpc.AbstractOperation;
import mx.rpc.AsyncToken;
import mx.rpc.remoting.Operation;
import mx.rpc.remoting.RemoteObject;

import mx.collections.ItemResponder;
import com.adobe.fiber.valueobjects.AvailablePropertyIterator;

[ExcludeClass]
internal class _Super_CurrencyMaster extends com.adobe.fiber.services.wrapper.RemoteObjectServiceWrapper
{

    // Constructor
    public function _Super_CurrencyMaster()
    {
        // initialize service control
        _serviceControl = new mx.rpc.remoting.RemoteObject();

        // initialize RemoteClass alias for all entities returned by functions of this service
        com.model.valueObjects.VoCurrencyHeader._initRemoteClassAlias();
        com.model.valueObjects.VoCurrencyDetail._initRemoteClassAlias();
        com.model.valueObjects.VoCurrencyDetSerial._initRemoteClassAlias();
        com.model.valueObjects.VOCountryMaster._initRemoteClassAlias();

        var operations:Object = new Object();
        var operation:mx.rpc.remoting.Operation;

        operation = new mx.rpc.remoting.Operation(null, "addNewCurrency");
         operation.resultType = Object;
        operations["addNewCurrency"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "getAllCurrency");
         operation.resultElementType = com.model.valueObjects.VoCurrencyHeader;
        operations["getAllCurrency"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "addCurrencyDetails");
         operation.resultType = Object;
        operations["addCurrencyDetails"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "getAllCurrencyDetails");
         operation.resultElementType = com.model.valueObjects.VoCurrencyDetail;
        operations["getAllCurrencyDetails"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "getAllCurrencyDetSerials");
         operation.resultElementType = com.model.valueObjects.VoCurrencyDetSerial;
        operations["getAllCurrencyDetSerials"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "editCurrencyHeader");
         operation.resultType = Object;
        operations["editCurrencyHeader"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "deleteCurrency");
         operation.resultType = Object;
        operations["deleteCurrency"] = operation;
        operation = new mx.rpc.remoting.Operation(null, "getCountriesNotHaveCurrency");
         operation.resultElementType = com.model.valueObjects.VOCountryMaster;
        operations["getCountriesNotHaveCurrency"] = operation;

        _serviceControl.operations = operations;
        _serviceControl.convertResultHandler = com.adobe.serializers.utility.TypeUtility.convertResultHandler;
        _serviceControl.source = "CurrencyMaster";
        _serviceControl.endpoint = "gateway.php";
        destination = "CurrencyMaster";



         model_internal::initialize();
    }

    /**
      * This method is a generated wrapper used to call the 'addNewCurrency' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function addNewCurrency(VObject:Object) : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("addNewCurrency");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send(VObject) ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'getAllCurrency' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function getAllCurrency() : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("getAllCurrency");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send() ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'addCurrencyDetails' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function addCurrencyDetails(VObject:Object) : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("addCurrencyDetails");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send(VObject) ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'getAllCurrencyDetails' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function getAllCurrencyDetails() : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("getAllCurrencyDetails");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send() ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'getAllCurrencyDetSerials' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function getAllCurrencyDetSerials() : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("getAllCurrencyDetSerials");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send() ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'editCurrencyHeader' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function editCurrencyHeader(VObject:Object) : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("editCurrencyHeader");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send(VObject) ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'deleteCurrency' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function deleteCurrency(serialnumber:Object) : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("deleteCurrency");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send(serialnumber) ;

        return _internal_token;
    }
     
    /**
      * This method is a generated wrapper used to call the 'getCountriesNotHaveCurrency' operation. It returns an mx.rpc.AsyncToken whose 
      * result property will be populated with the result of the operation when the server response is received. 
      * To use this result from MXML code, define a CallResponder component and assign its token property to this method's return value. 
      * You can then bind to CallResponder.lastResult or listen for the CallResponder.result or fault events.
      *
      * @see mx.rpc.AsyncToken
      * @see mx.rpc.CallResponder 
      *
      * @return an mx.rpc.AsyncToken whose result property will be populated with the result of the operation when the server response is received.
      */
    public function getCountriesNotHaveCurrency() : mx.rpc.AsyncToken
    {
        var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("getCountriesNotHaveCurrency");
        var _internal_token:mx.rpc.AsyncToken = _internal_operation.send() ;

        return _internal_token;
    }
     
}

}
